# -*- coding: utf-8 -*-

bytecode_map = {
#M指令集
"move":"M",
"move/from16":"M",
"move/16":"M",
"move-wide":"M",
"move-wide/from16":"M",
"move-wide/16":"M",
"move-object":"M",
"move-object/from16":"M",
"move-object/16":"M",
"move-result":"M",
"move-result-wide":"M",
"move-result-object":"M",
"move-exception":"M",
#R指令集
"return-void":"R",
"return":"R",
"return-wide":"R",
"return-object":"R",
#G指令集
"goto":"G",
"goto/16":"G",
"goto/32":"G",
#I指令集
"if-eq":"I",
"if-ne":"I",
"if-lt":"I",
"if-ge":"I",
"if-gt":"I",
"if-le":"I",
"if-eqz":"I",
"if-nez":"I",
"if-ltz":"I",
"if-gez":"I",
"if-gtz":"I",
"if-lez":"I",
#T指令集
"aget":"T",
"aget-wide":"T",
"aget-object":"T",
"aget-boolean":"T",
"aget-byte":"T",
"aget-char":"T",
"aget-short":"T",
"iget":"T",
"iget-wide":"T",
"iget-object":"T",
"iget-boolean":"T",
"iget-byte":"T",
"iget-char":"T",
"iget-short":"T",
"sget":"T",
"sget-wide":"T",
"sget-object":"T",
"sget-boolean":"T",
"sget-byte":"T",
"sget-char":"T",
"sget-short":"T",
#P指令集
"aput":"P",
"aput-wide":"P",
"aput-object":"P",
"aput-boolean":"P",
"aput-byte":"P",
"aput-char":"P",
"aput-short":"P",
"iput":"P",
"iput-wide":"P",
"iput-object":"P",
"iput-boolean":"P",
"iput-byte":"P",
"iput-char":"P",
"iput-short":"P",
"sput":"P",
"sput-wide":"P",
"sput-object":"P",
"sput-boolean":"P",
"sput-byte":"P",
"sput-char":"P",
"sput-short":"P",
#V指令集
"invoke-virtual":"V",
"invoke-super":"V",
"invoke-direct":"V",
"invoke-static":"V",
"invoke-interface":"V",
"invoke-virtual/range":"V",
"invoke-super/range":"V",
"invoke-direct/range":"V",
"invoke-static/range":"V",
"invoke-interface/range":"V",
}